mod config;
use config::funcs;

mod modules;
use modules::garden::vegetables::Asparagus;

mod route;


fn main() {
    // 一级模块
    // src/config/mod.rs
    // ```rust
    // pub mod funcs;
    // ```
    // src/config/funcs.rs
    // ```rust
    // pub(crate) fn print_config() {
    //     println!("hello wold!Here is config modules")
    // }
    // ```
    funcs::print_config();

    // 一级模块
    // src/route.rs
    // ```rust
    // pub fn print_route() {
    //     println!("hello! Here is route");
    // }
    // ```
    route::print_route();

    // 多级模块
    // src/modules/garden/mod.rs
    // ```rust
    // pub mod vegetables;
    // ```
    // src/modules/garden/vegetables.rs
    // ```rust
    // #[derive(Debug)]
    // pub struct Asparagus{}
    // ```
    // src/modules/mod.rs
    // ```rust
    // pub mod garden;
    // ```
    let plant = Asparagus{};
    println!("{:?}", plant);

}

pub fn print_main() {
    println!("Hello! Here is main crate");
}